package tool

import (
	"MoSkeleton/framework/core/models"
)

type GenTable struct {
	models.MoModel
	BizId           uint64 `gorm:"column:biz_id;type:BIGINT;"`
	SourceTableName string `gorm:"column:source_table_name;type:VARCHAR(200);"`
	TablePrefix     string `gorm:"column:table_prefix;type:VARCHAR(32);"`
	TableComment    string `gorm:"column:table_comment;type:VARCHAR(500);"`
	SubTableId      uint64 `gorm:"column:sub_table_id;type:BIGINT;"`
	SubTableFkName  string `gorm:"column:sub_table_fk_name;type:VARCHAR(64);"`
	StructName      string `gorm:"column:struct_name;type:VARCHAR(100);"`
	TplCategory     string `gorm:"column:tpl_category;type:VARCHAR(200);"`
	TplWebType      string `gorm:"column:tpl_web_type;type:VARCHAR(32);"`
	PackagePath     string `gorm:"column:package_path;type:VARCHAR(100);"`
	PackageName     string `gorm:"column:package_name;type:VARCHAR(100);"`
	ModuleName      string `gorm:"column:module_name;type:VARCHAR(30);"`
	BusinessName    string `gorm:"column:business_name;type:VARCHAR(30);"`
	FunctionName    string `gorm:"column:function_name;type:VARCHAR(50);"`
	FunctionAuthor  string `gorm:"column:function_author;type:VARCHAR(50);"`
	GenType         string `gorm:"column:gen_type;type:CHAR(1);"`
	GenPath         string `gorm:"column:gen_path;type:VARCHAR(200);"`
	Options         string `gorm:"column:options;type:VARCHAR(1000);"`
	CreatedBy       string `gorm:"column:created_by;type:VARCHAR(64);"`
	UpdatedBy       string `gorm:"column:updated_by;type:VARCHAR(64);"`
	Remark          string `gorm:"column:remark;type:VARCHAR(500);"`
}

func (b *GenTable) TableName() string {
	return "gen_table"
}
